/*
 * Copyright 2014-2016 CyberVision, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.kaaproject.kaa.common.dto.admin;

import org.kaaproject.kaa.common.dto.KaaAuthorityDto;

import java.io.Serializable;

public class AuthResultDto implements Serializable {

  private static final long serialVersionUID = -8115478415562807295L;

  private String username;
  private String displayName;
  private KaaAuthorityDto authority;
  private String tenantId;
  private Result authResult;

  public AuthResultDto() {
  }

  /**
   * All-args constructor.
   */
  public AuthResultDto(String username, String displayName, KaaAuthorityDto authority) {
    super();
    this.username = username;
    this.displayName = displayName;
    this.authority = authority;
  }

  public String getUsername() {
    return username;
  }

  public void setUsername(String username) {
    this.username = username;
  }

  public String getDisplayName() {
    return displayName;
  }

  public void setDisplayName(String displayName) {
    this.displayName = displayName;
  }

  public KaaAuthorityDto getAuthority() {
    return authority;
  }

  public void setAuthority(KaaAuthorityDto authority) {
    this.authority = authority;
  }

  public String getTenantId() {
    return tenantId;
  }

  public void setTenantId(String tenantId) {
    this.tenantId = tenantId;
  }

  public Result getAuthResult() {
    return authResult;
  }

  public void setAuthResult(Result authResult) {
    this.authResult = authResult;
  }

  public static enum Result {
    ERROR,
    NOT_LOGGED_IN,
    OK,
    KAA_ADMIN_NOT_EXISTS;
  }
}
